/**
 * 确保对象中所有键都是字符串，包括深层嵌套对象
 * 避免Vue中出现"'0' is not a valid attribute name"错误
 * @param {*} data 需要处理的数据
 * @returns {*} 处理后的数据，保证所有对象键都是字符串
 */
export function sanitizeObjectKeys(data) {
  // 非对象或null直接返回
  if (!data || typeof data !== 'object') return data;
  
  // 处理数组
  if (Array.isArray(data)) {
    return data.map(item => sanitizeObjectKeys(item));
  }
  
  // 处理对象
  const cleanData = {};
  Object.keys(data).forEach(key => {
    // 确保键是字符串，递归处理嵌套对象
    cleanData[String(key)] = sanitizeObjectKeys(data[key]);
  });
  
  return cleanData;
} 